package com.xiaozhu.ai_config;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.CorsRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

/**
 * @author 朱慧军
 * @version 1.0
 */

@Configuration
public class MvcConfiguration implements WebMvcConfigurer {

    @Override
    public void addCorsMappings(CorsRegistry registry){
        registry.addMapping("/**")
                // 🔧 安全修复：只允许配置的域名访问，不再使用 "*"
                // 之前的 allowedOrigins("*") 允许任何网站访问，存在安全风险
                .allowedOrigins("http://localhost:5173")
                .allowedMethods("GET", "POST", "PUT", "DELETE", "OPTIONS")
                .allowedHeaders("*")
                // 🔧 安全改进：允许携带凭证（Cookie、Authorization header）
                .allowCredentials(true)
                .exposedHeaders("Content-Disposition")
                // 🔧 性能优化：预检请求缓存1小时，减少OPTIONS请求
                .maxAge(3600);
    }
}
